{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "mCOJwSTxfuMP"
   },
   "source": [
    "#  <span style=\"color:orange\">Multiclass Classification Tutorial (MCLF101) - Level Beginner</span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "h0Bb-8rXfuMS"
   },
   "source": [
    "**Created using: PyCaret 2.0** <br />\n",
    "**Date Updated: August 24, 2020**\n",
    "\n",
    "# 1.0 Tutorial Objective\n",
    "Welcome to the Multiclass Classification Tutorial **(MCLF101)** - Level Beginner. This tutorial assumes that you are new to PyCaret and looking to get started with Multiclass Classification using the `pycaret.classification` Module.\n",
    "\n",
    "In this tutorial we will learn:\n",
    "\n",
    "\n",
    "* **Getting Data:**  How to import data from PyCaret repository\n",
    "* **Setting up Environment:**  How to setup an experiment in PyCaret and get started with building multiclass models\n",
    "* **Create Model:**  How to create a model, perform stratified cross validation and evaluate classification metrics\n",
    "* **Tune Model:**  How to automatically tune the hyper-parameters of a multiclass model\n",
    "* **Plot Model:**  How to analyze model performance using various plots\n",
    "* **Finalize Model:** How to finalize the best model at the end of the experiment\n",
    "* **Predict Model:**  How to make predictions on new / unseen data\n",
    "* **Save / Load Model:**  How to save / load a model for future use\n",
    "\n",
    "Read Time : Approx. 30 Minutes\n",
    "\n",
    "\n",
    "## 1.1 Installing PyCaret\n",
    "The first step to get started with PyCaret is to install pycaret. Installation is easy and will only take a few minutes. Follow the instructions below:\n",
    "\n",
    "#### Installing PyCaret in Local Jupyter Notebook\n",
    "`pip install pycaret`  <br />\n",
    "\n",
    "#### Installing PyCaret on Google Colab or Azure Notebooks\n",
    "`!pip install pycaret`\n",
    "\n",
    "\n",
    "## 1.2 Pre-Requisites\n",
    "- Python 3.6 or greater\n",
    "- PyCaret 2.0 or greater\n",
    "- Internet connection to load data from pycaret's repository\n",
    "- Basic Knowledge of Multiclass Classification\n",
    "\n",
    "## 1.3 For Google colab users:\n",
    "If you are running this notebook on Google colab, run the following code at top of your notebook to display interactive visuals.<br/>\n",
    "<br/>\n",
    "`from pycaret.utils import enable_colab` <br/>\n",
    "`enable_colab()`\n",
    "\n",
    "## 1.4 See also:\n",
    "- __[Binary Classification Tutorial (CLF101) - Level Beginner](https://github.com/pycaret/pycaret/blob/master/tutorials/Binary%20Classification%20Tutorial%20Level%20Beginner%20-%20%20CLF101.ipynb)__\n",
    "- __[Binary Classification Tutorial (CLF102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/tutorials/Binary%20Classification%20Tutorial%20Level%20Intermediate%20-%20CLF102.ipynb)__"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "VDM6TNTrfuMV"
   },
   "source": [
    "# 2.0 What is Multiclass Classification?\n",
    "Multiclass classification is a supervised machine learning technique where the goal is to classify instances into one of three or more classes. (Classifying instances into one of two classes is called Binary Classification). Multiclass classification should not be confused with multi-label classification, where multiple labels are to be predicted for each instance.\n",
    "\n",
    "__[Learn More about Multiclass Classification](https://towardsdatascience.com/machine-learning-multiclass-classification-with-imbalanced-data-set-29f6a177c1a)__"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "FEybtNqwfuMY"
   },
   "source": [
    "# 3.0 Overview of the Classification Module in PyCaret\n",
    "PyCaret's classification module (`pycaret.classification`) is a supervised machine learning module which is used for classifying the elements into binary or multinomial groups based on various techniques and algorithms. \n",
    "\n",
    "The PyCaret classification module can be used for Binary or Multi-class classification problems. It has over 18 algorithms and 14 plots to analyze the performance of models. Be it hyper-parameter tuning, ensembling or advanced techniques like stacking, PyCaret's classification module has it all."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "x2KiOHinfuMa"
   },
   "source": [
    "# 4.0 Dataset for the Tutorial"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "B0re-c4CfuMe"
   },
   "source": [
    "For this tutorial we will use the **Iris Dataset** from UCI. This is perhaps the best known database to be found in the pattern recognition literature. The data set contains 3 classes of 50 instances each, where each class refers to a type of iris plant. Short descriptions of each column are as follows:\n",
    "\n",
    "- **sepal_length:** Length of Sepal\n",
    "- **sepal_width:** Width of Sepal\n",
    "- **petal_length:** Length of Petal\n",
    "- **petal_width:** Width of Petal\n",
    "- **species:** One of three class (Setosa, Versicolour, Virginica) `Target Column`\n",
    "\n",
    "#### Dataset Acknowledgement:\n",
    "Creator: R.A. Fisher, Donor : Michael Marshall (MARSHALL%PLU '@' io.arc.nasa.gov)\n",
    "\n",
    "The original dataset and data dictionary can be __[found here.](https://archive.ics.uci.edu/ml/datasets/Iris)__ "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "e-NQVSpIfuMi"
   },
   "source": [
    "# 5.0 Getting the Data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "LGV6PMCtfuMl"
   },
   "source": [
    "You can download the data from the original source __[found here](https://archive.ics.uci.edu/ml/datasets/Iris)__ and load it using pandas __[(Learn How)](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html)__ or you can use PyCaret's data respository to load the data using the `get_data()` function (This will require an internet connection)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 204
    },
    "colab_type": "code",
    "id": "wEki9ZbCfuMm",
    "outputId": "edcba15b-233e-476c-d119-f9a07863f0df"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sepal_length</th>\n",
       "      <th>sepal_width</th>\n",
       "      <th>petal_length</th>\n",
       "      <th>petal_width</th>\n",
       "      <th>species</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>5.1</td>\n",
       "      <td>3.5</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>4.9</td>\n",
       "      <td>3.0</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>4.7</td>\n",
       "      <td>3.2</td>\n",
       "      <td>1.3</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4.6</td>\n",
       "      <td>3.1</td>\n",
       "      <td>1.5</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5.0</td>\n",
       "      <td>3.6</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   sepal_length  sepal_width  petal_length  petal_width      species\n",
       "0           5.1          3.5           1.4          0.2  Iris-setosa\n",
       "1           4.9          3.0           1.4          0.2  Iris-setosa\n",
       "2           4.7          3.2           1.3          0.2  Iris-setosa\n",
       "3           4.6          3.1           1.5          0.2  Iris-setosa\n",
       "4           5.0          3.6           1.4          0.2  Iris-setosa"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pycaret.datasets import get_data\n",
    "dataset = get_data('iris')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 34
    },
    "colab_type": "code",
    "id": "mNFEXhMsfuMs",
    "outputId": "f5705470-be5f-429d-faea-6caa1f23ee1e"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(150, 5)"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#check the shape of data\n",
    "dataset.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "o4C_ep4RfuMx"
   },
   "source": [
    "In order to demonstrate the `predict_model()` function on unseen data, a sample of 15 records has been withheld from the original dataset to be used for predictions. This should not be confused with a train/test split as this particular split is performed to simulate a real life scenario. Another way to think about this is that these 15 records were not available at the time when the machine learning experiment was performed."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 51
    },
    "colab_type": "code",
    "id": "Ttyujuo7fuMy",
    "outputId": "61f75ccf-541b-4efa-d00a-e0a95bf4017e"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Data for Modeling: (135, 5)\n",
      "Unseen Data For Predictions: (15, 5)\n"
     ]
    }
   ],
   "source": [
    "data = dataset.sample(frac=0.9, random_state=786)\n",
    "data_unseen = dataset.drop(data.index)\n",
    "\n",
    "data.reset_index(drop=True, inplace=True)\n",
    "data_unseen.reset_index(drop=True, inplace=True)\n",
    "\n",
    "print('Data for Modeling: ' + str(data.shape))\n",
    "print('Unseen Data For Predictions: ' + str(data_unseen.shape))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "QXG8qOz5fuM3"
   },
   "source": [
    "# 6.0 Setting up the Environment in PyCaret"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "nhFahBmtfuM5"
   },
   "source": [
    "The `setup()` function initializes the environment in pycaret and creates the transformation pipeline to prepare the data for modeling and deployment. `setup()` must be called before executing any other function in pycaret. It takes two mandatory parameters: a pandas dataframe and the name of the target column. All other parameters are optional and are used to customize the pre-processing pipeline (we will see them in later tutorials).\n",
    "\n",
    "When `setup()` is executed, PyCaret's inference algorithm will automatically infer the data types for all features based on certain properties. The data type should be inferred correctly but this is not always the case. To account for this, PyCaret displays a table containing the features and their inferred data types after `setup()` is executed. If all of the data types are correctly identified `enter` can be pressed to continue or `quit` can be typed to end the expriment. Ensuring that the data types are correct is of fundamental importance in PyCaret as it automatically performs a few pre-processing tasks which are imperative to any machine learning experiment. These tasks are performed differently for each data type which means it is very important for them to be correctly configured.\n",
    "\n",
    "In later tutorials we will learn how to overwrite PyCaret's infered data type using the `numeric_features` and `categorical_features` parameters in `setup()`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 956
    },
    "colab_type": "code",
    "id": "9PcuxLQSfuNC",
    "outputId": "68abc9ac-a0d2-4b33-f524-9cabd0256fcc",
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Setup Succesfully Completed!\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_8505c218_e647_11ea_a3db_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Description</th>        <th class=\"col_heading level0 col1\" >Value</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow0_col0\" class=\"data row0 col0\" >session_id</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow0_col1\" class=\"data row0 col1\" >123</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow1_col0\" class=\"data row1 col0\" >Target Type</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow1_col1\" class=\"data row1 col1\" >Multiclass</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow2_col0\" class=\"data row2 col0\" >Label Encoded</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow2_col1\" class=\"data row2 col1\" >Iris-setosa: 0, Iris-versicolor: 1, Iris-virginica: 2</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow3_col0\" class=\"data row3 col0\" >Original Data</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow3_col1\" class=\"data row3 col1\" >(135, 5)</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow4_col0\" class=\"data row4 col0\" >Missing Values </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow4_col1\" class=\"data row4 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow5_col0\" class=\"data row5 col0\" >Numeric Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow5_col1\" class=\"data row5 col1\" >4</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow6_col0\" class=\"data row6 col0\" >Categorical Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow6_col1\" class=\"data row6 col1\" >0</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow7_col0\" class=\"data row7 col0\" >Ordinal Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow7_col1\" class=\"data row7 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow8_col0\" class=\"data row8 col0\" >High Cardinality Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow8_col1\" class=\"data row8 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow9_col0\" class=\"data row9 col0\" >High Cardinality Method </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow9_col1\" class=\"data row9 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >10</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow10_col0\" class=\"data row10 col0\" >Sampled Data</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow10_col1\" class=\"data row10 col1\" >(135, 5)</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >11</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow11_col0\" class=\"data row11 col0\" >Transformed Train Set</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow11_col1\" class=\"data row11 col1\" >(94, 4)</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row12\" class=\"row_heading level0 row12\" >12</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow12_col0\" class=\"data row12 col0\" >Transformed Test Set</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow12_col1\" class=\"data row12 col1\" >(41, 4)</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row13\" class=\"row_heading level0 row13\" >13</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow13_col0\" class=\"data row13 col0\" >Numeric Imputer </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow13_col1\" class=\"data row13 col1\" >mean</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row14\" class=\"row_heading level0 row14\" >14</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow14_col0\" class=\"data row14 col0\" >Categorical Imputer </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow14_col1\" class=\"data row14 col1\" >constant</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row15\" class=\"row_heading level0 row15\" >15</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow15_col0\" class=\"data row15 col0\" >Normalize </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow15_col1\" class=\"data row15 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row16\" class=\"row_heading level0 row16\" >16</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow16_col0\" class=\"data row16 col0\" >Normalize Method </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow16_col1\" class=\"data row16 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row17\" class=\"row_heading level0 row17\" >17</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow17_col0\" class=\"data row17 col0\" >Transformation </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow17_col1\" class=\"data row17 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row18\" class=\"row_heading level0 row18\" >18</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow18_col0\" class=\"data row18 col0\" >Transformation Method </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow18_col1\" class=\"data row18 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row19\" class=\"row_heading level0 row19\" >19</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow19_col0\" class=\"data row19 col0\" >PCA </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow19_col1\" class=\"data row19 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row20\" class=\"row_heading level0 row20\" >20</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow20_col0\" class=\"data row20 col0\" >PCA Method </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow20_col1\" class=\"data row20 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row21\" class=\"row_heading level0 row21\" >21</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow21_col0\" class=\"data row21 col0\" >PCA Components </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow21_col1\" class=\"data row21 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row22\" class=\"row_heading level0 row22\" >22</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow22_col0\" class=\"data row22 col0\" >Ignore Low Variance </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow22_col1\" class=\"data row22 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row23\" class=\"row_heading level0 row23\" >23</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow23_col0\" class=\"data row23 col0\" >Combine Rare Levels </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow23_col1\" class=\"data row23 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row24\" class=\"row_heading level0 row24\" >24</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow24_col0\" class=\"data row24 col0\" >Rare Level Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow24_col1\" class=\"data row24 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row25\" class=\"row_heading level0 row25\" >25</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow25_col0\" class=\"data row25 col0\" >Numeric Binning </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow25_col1\" class=\"data row25 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row26\" class=\"row_heading level0 row26\" >26</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow26_col0\" class=\"data row26 col0\" >Remove Outliers </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow26_col1\" class=\"data row26 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row27\" class=\"row_heading level0 row27\" >27</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow27_col0\" class=\"data row27 col0\" >Outliers Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow27_col1\" class=\"data row27 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row28\" class=\"row_heading level0 row28\" >28</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow28_col0\" class=\"data row28 col0\" >Remove Multicollinearity </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow28_col1\" class=\"data row28 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row29\" class=\"row_heading level0 row29\" >29</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow29_col0\" class=\"data row29 col0\" >Multicollinearity Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow29_col1\" class=\"data row29 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row30\" class=\"row_heading level0 row30\" >30</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow30_col0\" class=\"data row30 col0\" >Clustering </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow30_col1\" class=\"data row30 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row31\" class=\"row_heading level0 row31\" >31</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow31_col0\" class=\"data row31 col0\" >Clustering Iteration </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow31_col1\" class=\"data row31 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row32\" class=\"row_heading level0 row32\" >32</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow32_col0\" class=\"data row32 col0\" >Polynomial Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow32_col1\" class=\"data row32 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row33\" class=\"row_heading level0 row33\" >33</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow33_col0\" class=\"data row33 col0\" >Polynomial Degree </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow33_col1\" class=\"data row33 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row34\" class=\"row_heading level0 row34\" >34</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow34_col0\" class=\"data row34 col0\" >Trignometry Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow34_col1\" class=\"data row34 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row35\" class=\"row_heading level0 row35\" >35</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow35_col0\" class=\"data row35 col0\" >Polynomial Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow35_col1\" class=\"data row35 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row36\" class=\"row_heading level0 row36\" >36</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow36_col0\" class=\"data row36 col0\" >Group Features </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow36_col1\" class=\"data row36 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row37\" class=\"row_heading level0 row37\" >37</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow37_col0\" class=\"data row37 col0\" >Feature Selection </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow37_col1\" class=\"data row37 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row38\" class=\"row_heading level0 row38\" >38</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow38_col0\" class=\"data row38 col0\" >Features Selection Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow38_col1\" class=\"data row38 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row39\" class=\"row_heading level0 row39\" >39</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow39_col0\" class=\"data row39 col0\" >Feature Interaction </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow39_col1\" class=\"data row39 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row40\" class=\"row_heading level0 row40\" >40</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow40_col0\" class=\"data row40 col0\" >Feature Ratio </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow40_col1\" class=\"data row40 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row41\" class=\"row_heading level0 row41\" >41</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow41_col0\" class=\"data row41 col0\" >Interaction Threshold </td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow41_col1\" class=\"data row41 col1\" >None</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row42\" class=\"row_heading level0 row42\" >42</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow42_col0\" class=\"data row42 col0\" >Fix Imbalance</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow42_col1\" class=\"data row42 col1\" >False</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8505c218_e647_11ea_a3db_482ae32b83dalevel0_row43\" class=\"row_heading level0 row43\" >43</th>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow43_col0\" class=\"data row43 col0\" >Fix Imbalance Method</td>\n",
       "                        <td id=\"T_8505c218_e647_11ea_a3db_482ae32b83darow43_col1\" class=\"data row43 col1\" >SMOTE</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faeec00a88>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pycaret.classification import *\n",
    "exp_mclf101 = setup(data = data, target = 'species', session_id=123) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "8Mz7JeKqfuNJ"
   },
   "source": [
    "Once the setup has been succesfully executed it prints the information grid which contains several important pieces of information. Most of the information is related to the pre-processing pipeline which is constructed when `setup()` is executed. The majority of these features are out of scope for the purposes of this tutorial however a few important things to note at this stage include:\n",
    "\n",
    "- **session_id :**  A pseduo-random number distributed as a seed in all functions for later reproducibility. If no `session_id` is passed, a random number is automatically generated that is distributed to all functions. In this experiment, the `session_id` is set as `123` for later reproducibility.<br/>\n",
    "<br/>\n",
    "- **Target Type :**  Binary or Multiclass. The Target type is automatically detected and shown. There is no difference in how the experiment is performed for Binary or Multiclass problems. All functionalities are identical.<br/>\n",
    "<br/>\n",
    "- **Label Encoded :**  When the Target variable is of type string (i.e. 'Yes' or 'No') instead of 1 or 0, it automatically encodes the label into 1 and 0 and displays the mapping (0 : No, 1 : Yes) for reference. In this experiment label encoding is applied as follows: Iris-setosa: 0, Iris-versicolor: 1, Iris-virginica: 2. <br/>\n",
    "<br/>\n",
    "- **Original Data :**  Displays the original shape of the dataset. In this experiment (135, 5) means 135 samples and 5 features including the target column. <br/>\n",
    "<br/>\n",
    "- **Missing Values :**  When there are missing values in the original data this will show as True. For this experiment there are no missing values in the dataset.<br/>\n",
    "<br/>\n",
    "- **Numeric Features :**  The number of features inferred as numeric. In this dataset, 4 out of 5 features are inferred as numeric. <br/>\n",
    "<br/>\n",
    "- **Categorical Features :**  The number of features inferred as categorical. In this dataset, there are no categorical features. <br/>\n",
    "<br/>\n",
    "- **Transformed Train Set :**  Displays the shape of the transformed training set. Notice that the original shape of (135, 5) is transformed into (94, 4) for the transformed train set. <br/>\n",
    "<br/>\n",
    "- **Transformed Test Set :**  Displays the shape of the transformed test/hold-out set. There are 41 samples in test/hold-out set. This split is based on the default value of 70/30 that can be changed using the `train_size` parameter in setup. <br/>\n",
    "\n",
    "Notice how a few tasks that are imperative to perform modeling are automatically handled such as missing value imputation, categorical encoding etc. Most of the parameters in `setup()` are optional and used for customizing the pre-processing pipeline. These parameters are out of scope for this tutorial but as you progress to the intermediate and expert levels, we will cover them in much greater detail."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "i9ZvVSDYfuNL"
   },
   "source": [
    "# 7.0 Comparing All Models"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Kr65WJW2fuNM"
   },
   "source": [
    "Comparing all models to evaluate performance is the recommended starting point for modeling once the setup is completed (unless you exactly know what kind of model you need, which is often not the case). This function trains all models in the model library and scores them using stratified cross validation for metric evaluation. The output prints a score grid that shows average Accuracy, Recall, Precision, F1, Kappa, and MCC accross the folds (10 by default) along with training times."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 355
    },
    "colab_type": "code",
    "id": "1wcMisYyfuNN",
    "outputId": "d3e16fbb-c33b-4bda-df3f-de2507f821c8",
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_ac00bcc0_e647_11ea_bf36_482ae32b83da th {\n",
       "          text-align: left;\n",
       "    }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col1 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col3 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col5 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col6 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col7 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col4 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col4 {\n",
       "            background-color:  yellow;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col0 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col1 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col2 {\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col3 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col4 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col5 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col6 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col7 {\n",
       "            : ;\n",
       "            text-align:  left;\n",
       "        }    #T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col8 {\n",
       "            background-color:  lightgrey;\n",
       "            text-align:  left;\n",
       "        }</style><table id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Model</th>        <th class=\"col_heading level0 col1\" >Accuracy</th>        <th class=\"col_heading level0 col2\" >AUC</th>        <th class=\"col_heading level0 col3\" >Recall</th>        <th class=\"col_heading level0 col4\" >Prec.</th>        <th class=\"col_heading level0 col5\" >F1</th>        <th class=\"col_heading level0 col6\" >Kappa</th>        <th class=\"col_heading level0 col7\" >MCC</th>        <th class=\"col_heading level0 col8\" >TT (Sec)</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col0\" class=\"data row0 col0\" >Naive Bayes</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.9567</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col2\" class=\"data row0 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col3\" class=\"data row0 col3\" >0.9556</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col4\" class=\"data row0 col4\" >0.9619</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col5\" class=\"data row0 col5\" >0.9561</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col6\" class=\"data row0 col6\" >0.9348</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col7\" class=\"data row0 col7\" >0.9378</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow0_col8\" class=\"data row0 col8\" >0.0076</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col0\" class=\"data row1 col0\" >K Neighbors Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.9467</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col2\" class=\"data row1 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col3\" class=\"data row1 col3\" >0.9444</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col4\" class=\"data row1 col4\" >0.9633</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col5\" class=\"data row1 col5\" >0.9430</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col6\" class=\"data row1 col6\" >0.9197</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col7\" class=\"data row1 col7\" >0.9295</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow1_col8\" class=\"data row1 col8\" >0.0077</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col0\" class=\"data row2 col0\" >Extreme Gradient Boosting</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.9467</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col2\" class=\"data row2 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col3\" class=\"data row2 col3\" >0.9444</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col4\" class=\"data row2 col4\" >0.9633</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col5\" class=\"data row2 col5\" >0.9430</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col6\" class=\"data row2 col6\" >0.9197</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col7\" class=\"data row2 col7\" >0.9295</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow2_col8\" class=\"data row2 col8\" >0.0521</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col0\" class=\"data row3 col0\" >Light Gradient Boosting Machine</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.9467</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9444</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.9600</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.9451</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.9197</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col7\" class=\"data row3 col7\" >0.9271</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow3_col8\" class=\"data row3 col8\" >0.0606</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col0\" class=\"data row4 col0\" >Random Forest Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.9456</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col2\" class=\"data row4 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col3\" class=\"data row4 col3\" >0.9444</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col4\" class=\"data row4 col4\" >0.9536</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col5\" class=\"data row4 col5\" >0.9446</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col6\" class=\"data row4 col6\" >0.9182</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col7\" class=\"data row4 col7\" >0.9227</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow4_col8\" class=\"data row4 col8\" >0.2123</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col0\" class=\"data row5 col0\" >Quadratic Discriminant Analysis</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.9456</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col2\" class=\"data row5 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col3\" class=\"data row5 col3\" >0.9444</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col4\" class=\"data row5 col4\" >0.9536</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col5\" class=\"data row5 col5\" >0.9446</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col6\" class=\"data row5 col6\" >0.9182</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col7\" class=\"data row5 col7\" >0.9227</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow5_col8\" class=\"data row5 col8\" >0.0071</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col0\" class=\"data row6 col0\" >Extra Trees Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.9356</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9333</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.9433</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.9337</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.9030</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col7\" class=\"data row6 col7\" >0.9082</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow6_col8\" class=\"data row6 col8\" >0.3872</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col0\" class=\"data row7 col0\" >CatBoost Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.9356</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.9333</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.9433</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.9337</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.9030</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col7\" class=\"data row7 col7\" >0.9082</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow7_col8\" class=\"data row7 col8\" >2.1596</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col0\" class=\"data row8 col0\" >Gradient Boosting Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.9344</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col2\" class=\"data row8 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col3\" class=\"data row8 col3\" >0.9333</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col4\" class=\"data row8 col4\" >0.9453</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col5\" class=\"data row8 col5\" >0.9332</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col6\" class=\"data row8 col6\" >0.9015</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col7\" class=\"data row8 col7\" >0.9076</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow8_col8\" class=\"data row8 col8\" >0.1215</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col0\" class=\"data row9 col0\" >Logistic Regression</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.9244</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.9222</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.9345</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.9221</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.8861</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col7\" class=\"data row9 col7\" >0.8929</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow9_col8\" class=\"data row9 col8\" >0.0213</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >10</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col0\" class=\"data row10 col0\" >Ada Boost Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.9244</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9222</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9350</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.9223</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.8864</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col7\" class=\"data row10 col7\" >0.8931</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow10_col8\" class=\"data row10 col8\" >0.1121</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >11</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col0\" class=\"data row11 col0\" >Decision Tree Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.9233</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.9222</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.9342</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.9211</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.8848</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col7\" class=\"data row11 col7\" >0.8919</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow11_col8\" class=\"data row11 col8\" >0.0082</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row12\" class=\"row_heading level0 row12\" >12</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col0\" class=\"data row12 col0\" >Linear Discriminant Analysis</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col1\" class=\"data row12 col1\" >0.8611</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col2\" class=\"data row12 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col3\" class=\"data row12 col3\" >0.8667</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col4\" class=\"data row12 col4\" >0.8520</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col5\" class=\"data row12 col5\" >0.8482</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col6\" class=\"data row12 col6\" >0.7944</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col7\" class=\"data row12 col7\" >0.8130</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow12_col8\" class=\"data row12 col8\" >0.0081</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row13\" class=\"row_heading level0 row13\" >13</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col0\" class=\"data row13 col0\" >Ridge Classifier</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col1\" class=\"data row13 col1\" >0.8289</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col2\" class=\"data row13 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col3\" class=\"data row13 col3\" >0.8361</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col4\" class=\"data row13 col4\" >0.8251</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col5\" class=\"data row13 col5\" >0.8147</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col6\" class=\"data row13 col6\" >0.7461</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col7\" class=\"data row13 col7\" >0.7686</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow13_col8\" class=\"data row13 col8\" >0.0098</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83dalevel0_row14\" class=\"row_heading level0 row14\" >14</th>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col0\" class=\"data row14 col0\" >SVM - Linear Kernel</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col1\" class=\"data row14 col1\" >0.7233</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col2\" class=\"data row14 col2\" >0.0000</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col3\" class=\"data row14 col3\" >0.7222</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col4\" class=\"data row14 col4\" >0.6520</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col5\" class=\"data row14 col5\" >0.6502</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col6\" class=\"data row14 col6\" >0.5884</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col7\" class=\"data row14 col7\" >0.6439</td>\n",
       "                        <td id=\"T_ac00bcc0_e647_11ea_bf36_482ae32b83darow14_col8\" class=\"data row14 col8\" >0.0093</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef519548>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "best = compare_models()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "JxcCbKtffuNV"
   },
   "source": [
    "Two simple words of code ***(not even a line)*** have trained and evaluated over 15 models using cross validation. The score grid printed above highlights the highest performing metric for comparison purposes only. The grid by default is sorted using 'Accuracy' (highest to lowest) which can be changed by passing the `sort` parameter. For example `compare_models(sort = 'Recall')` will sort the grid by Recall instead of `Accuracy`. If you want to change the fold parameter from the default value of `10` to a different value then you can use the `fold` parameter. For example `compare_models(fold = 5)` will compare all models on 5 fold cross validation. Reducing the number of folds will improve the training time. By default, `compare_models` return the best performing model based on default sort order but can be used to return a list of top N models by using `n_select` parameter.\n",
    "\n",
    "**Note:** The `AUC` metric is not available for Multiclass classification however the column will still be shown with `zero` values to maintain consistency between the Binary Classification and Multiclass Classification display grids. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "qH7AeJqjfuNX"
   },
   "source": [
    "# 8.0 Create a Model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "UM0qn2f_fuNY"
   },
   "source": [
    "`create_model` is the most granular function in PyCaret and is often the foundation behind most of the PyCaret functionalities. As the name suggests this function trains and evaluates a model using cross validation that can be set with `fold` parameter. The output prints a score grid that shows Accuracy, Recall, Precision, F1, Kappa and MCC by fold. \n",
    "\n",
    "For the remaining part of this tutorial, we will work with the below models as our candidate models. The selections are for illustration purposes only and do not necessarily mean they are the top performing or ideal for this type of data.\n",
    "\n",
    "- Decision Tree Classifier ('dt')\n",
    "- K Neighbors Classifier ('knn')\n",
    "- Logistic Regression ('lr')\n",
    "\n",
    "There are 18 classifiers available in the model library of PyCaret. Please view the `create_model()` docstring for the list of all available models."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "yyApyoXbfuNZ"
   },
   "source": [
    "### 8.1 Decision Tree Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421
    },
    "colab_type": "code",
    "id": "U6v4R3MJfuNb",
    "outputId": "da32db85-d927-48b1-b6d8-1744331ec306"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_ac4a649c_e647_11ea_b797_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col0\" class=\"data row0 col0\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col2\" class=\"data row0 col2\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col3\" class=\"data row0 col3\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col4\" class=\"data row0 col4\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col5\" class=\"data row0 col5\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow0_col6\" class=\"data row0 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col0\" class=\"data row2 col0\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col2\" class=\"data row2 col2\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col3\" class=\"data row2 col3\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col4\" class=\"data row2 col4\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col5\" class=\"data row2 col5\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow2_col6\" class=\"data row2 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col0\" class=\"data row4 col0\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col2\" class=\"data row4 col2\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col3\" class=\"data row4 col3\" >0.9167</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col4\" class=\"data row4 col4\" >0.8857</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col5\" class=\"data row4 col5\" >0.8333</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow4_col6\" class=\"data row4 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col0\" class=\"data row6 col0\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9167</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.8857</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.8333</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col0\" class=\"data row7 col0\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.8889</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.9167</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.8857</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.8333</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.6667</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.6667</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.6667</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.6571</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.5000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.5095</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9233</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9222</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9342</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9211</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.8848</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.8919</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ac4a649c_e647_11ea_b797_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0997</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.1000</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0971</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.1025</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1496</td>\n",
       "                        <td id=\"T_ac4a649c_e647_11ea_b797_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.1453</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef58bd48>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "dt = create_model('dt')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 272
    },
    "colab_type": "code",
    "id": "7jwPc7ZBfuNg",
    "outputId": "89c7ee4c-55ed-4764-fd03-0974c22f6b1f"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OneVsRestClassifier(estimator=DecisionTreeClassifier(ccp_alpha=0.0,\n",
      "                                                     class_weight=None,\n",
      "                                                     criterion='gini',\n",
      "                                                     max_depth=None,\n",
      "                                                     max_features=None,\n",
      "                                                     max_leaf_nodes=None,\n",
      "                                                     min_impurity_decrease=0.0,\n",
      "                                                     min_impurity_split=None,\n",
      "                                                     min_samples_leaf=1,\n",
      "                                                     min_samples_split=2,\n",
      "                                                     min_weight_fraction_leaf=0.0,\n",
      "                                                     presort='deprecated',\n",
      "                                                     random_state=123,\n",
      "                                                     splitter='best'),\n",
      "                    n_jobs=-1)\n"
     ]
    }
   ],
   "source": [
    "#trained model object is stored in the variable 'dt'. \n",
    "print(dt)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "PhHDTJYwfuNl"
   },
   "source": [
    "### 8.2 K Neighbors Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421
    },
    "colab_type": "code",
    "id": "WYHQ1DxkfuNm",
    "outputId": "26077e3b-a77b-4682-a518-a125e1f6c85a"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col0\" class=\"data row0 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col2\" class=\"data row0 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col3\" class=\"data row0 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col4\" class=\"data row0 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col5\" class=\"data row0 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow0_col6\" class=\"data row0 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col0\" class=\"data row2 col0\" >0.9000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col2\" class=\"data row2 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col3\" class=\"data row2 col3\" >0.9250</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col4\" class=\"data row2 col4\" >0.8971</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col5\" class=\"data row2 col5\" >0.8485</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow2_col6\" class=\"data row2 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col0\" class=\"data row4 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col2\" class=\"data row4 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col3\" class=\"data row4 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col4\" class=\"data row4 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col5\" class=\"data row4 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow4_col6\" class=\"data row4 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col0\" class=\"data row6 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col0\" class=\"data row7 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col2\" class=\"data row7 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col3\" class=\"data row7 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col4\" class=\"data row7 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col5\" class=\"data row7 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow7_col6\" class=\"data row7 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.7778</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.7778</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.8667</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.7500</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.6667</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.7223</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9467</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9444</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9633</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9430</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.9197</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.9295</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0730</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.0745</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0475</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.0801</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1097</td>\n",
       "                        <td id=\"T_b07aa7c6_e647_11ea_8098_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.0940</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1fae30ed188>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "knn = create_model('knn')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "8IA_BtchfuNt"
   },
   "source": [
    "### 8.3 Logistic Regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421
    },
    "colab_type": "code",
    "id": "u3nAFk1MfuNv",
    "outputId": "a863ebc8-ead4-4edc-ce9d-d91653f4fbd6"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col0\" class=\"data row0 col0\" >0.9000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col2\" class=\"data row0 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col3\" class=\"data row0 col3\" >0.9200</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col4\" class=\"data row0 col4\" >0.8956</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col5\" class=\"data row0 col5\" >0.8462</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow0_col6\" class=\"data row0 col6\" >0.8598</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col0\" class=\"data row2 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col2\" class=\"data row2 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col3\" class=\"data row2 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col4\" class=\"data row2 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col5\" class=\"data row2 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow2_col6\" class=\"data row2 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col0\" class=\"data row4 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col2\" class=\"data row4 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col3\" class=\"data row4 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col4\" class=\"data row4 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col5\" class=\"data row4 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow4_col6\" class=\"data row4 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col0\" class=\"data row6 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col0\" class=\"data row7 col0\" >0.6667</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.6667</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.6667</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.6571</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.5000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.5095</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9244</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9222</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9345</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9221</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.8861</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.8929</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0994</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.1000</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0970</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.1022</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1492</td>\n",
       "                        <td id=\"T_b0da139e_e647_11ea_b1b0_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.1450</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef627948>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lr = create_model('lr')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "HRtpGzhvfuN1"
   },
   "source": [
    "Notice that the Mean score of all models matches with the score printed in `compare_models()`. This is because the metrics printed in the `compare_models()` score grid are the average scores across all CV folds. Similar to `compare_models()`, if you want to change the fold parameter from the default value of 10 to a different value then you can use the `fold` parameter. For Example: `create_model('dt', fold = 5)` will create a Decision Tree Classifier using 5 fold stratified CV."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "jzY5pn-OfuN4"
   },
   "source": [
    "# 9.0 Tune a Model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "FShSLa10fuN5"
   },
   "source": [
    "When a model is created using the `create_model()` function it uses the default hyperparameters to train the model. In order to tune hyperparameters, the `tune_model()` function is used. This function automatically tunes the hyperparameters of a model using `Random Grid Search` on a pre-defined search space. The output prints a score grid that shows Accuracy, AUC, Recall, Precision, F1, Kappa, and MCC by fold for the best model. To use the custom search grid, you can pass `custom_grid` parameter in the `tune_model` function (see 9.2 KNN tuning below). <br/>\n",
    "<br/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "WVgKXyjdfuN7"
   },
   "source": [
    "### 9.1 Decision Tree Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421
    },
    "colab_type": "code",
    "id": "sQqeuiqLfuN9",
    "outputId": "2ae99738-689c-4506-da89-2a5710b2b40b"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_b135d68c_e647_11ea_9574_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_b135d68c_e647_11ea_9574_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col0\" class=\"data row0 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col2\" class=\"data row0 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col3\" class=\"data row0 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col4\" class=\"data row0 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col5\" class=\"data row0 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow0_col6\" class=\"data row0 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col0\" class=\"data row2 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col2\" class=\"data row2 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col3\" class=\"data row2 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col4\" class=\"data row2 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col5\" class=\"data row2 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow2_col6\" class=\"data row2 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col0\" class=\"data row4 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col2\" class=\"data row4 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col3\" class=\"data row4 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col4\" class=\"data row4 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col5\" class=\"data row4 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow4_col6\" class=\"data row4 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col0\" class=\"data row6 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col0\" class=\"data row7 col0\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.8889</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.9167</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.8857</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.8333</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.7778</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.7778</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.7778</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.7778</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.6667</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.6667</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9344</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9333</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9453</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9332</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.9015</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.9076</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b135d68c_e647_11ea_9574_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0731</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.0737</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0677</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.0738</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1097</td>\n",
       "                        <td id=\"T_b135d68c_e647_11ea_9574_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.1063</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef652508>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "tuned_dt = tune_model(dt)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 272
    },
    "colab_type": "code",
    "id": "Wgxxg07CfuOD",
    "outputId": "78e965df-7c6a-4548-b2ec-57a051df89bd"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OneVsRestClassifier(estimator=DecisionTreeClassifier(ccp_alpha=0.0,\n",
      "                                                     class_weight=None,\n",
      "                                                     criterion='gini',\n",
      "                                                     max_depth=2,\n",
      "                                                     max_features=2,\n",
      "                                                     max_leaf_nodes=None,\n",
      "                                                     min_impurity_decrease=0.0,\n",
      "                                                     min_impurity_split=None,\n",
      "                                                     min_samples_leaf=3,\n",
      "                                                     min_samples_split=2,\n",
      "                                                     min_weight_fraction_leaf=0.0,\n",
      "                                                     presort='deprecated',\n",
      "                                                     random_state=123,\n",
      "                                                     splitter='best'),\n",
      "                    n_jobs=None)\n"
     ]
    }
   ],
   "source": [
    "#tuned model object is stored in the variable 'tuned_dt'. \n",
    "print(tuned_dt)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "fe9QKCZ8fuOU"
   },
   "source": [
    "### 9.2 K Neighbors Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_0c1a5864_e648_11ea_b804_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col0\" class=\"data row0 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col2\" class=\"data row0 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col3\" class=\"data row0 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col4\" class=\"data row0 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col5\" class=\"data row0 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow0_col6\" class=\"data row0 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col0\" class=\"data row2 col0\" >0.9000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col2\" class=\"data row2 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col3\" class=\"data row2 col3\" >0.9250</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col4\" class=\"data row2 col4\" >0.8971</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col5\" class=\"data row2 col5\" >0.8485</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow2_col6\" class=\"data row2 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col0\" class=\"data row4 col0\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col2\" class=\"data row4 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col3\" class=\"data row4 col3\" >0.9167</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col4\" class=\"data row4 col4\" >0.8857</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col5\" class=\"data row4 col5\" >0.8333</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow4_col6\" class=\"data row4 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col0\" class=\"data row6 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col2\" class=\"data row6 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col3\" class=\"data row6 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col4\" class=\"data row6 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col5\" class=\"data row6 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow6_col6\" class=\"data row6 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col0\" class=\"data row7 col0\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.9167</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.8857</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.8333</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.7778</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.7778</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.8667</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.7500</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.6667</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.7223</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9356</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9333</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9550</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9316</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.9030</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.9144</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0c1a5864_e648_11ea_b804_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0725</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.0737</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0476</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.0793</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1089</td>\n",
       "                        <td id=\"T_0c1a5864_e648_11ea_b804_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.0936</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef576bc8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "tuned_knn = tune_model(knn, custom_grid = {'n_neighbors' : np.arange(0,50,1)})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "oF2hDwoifuOd"
   },
   "source": [
    "### 9.3 Logistic Regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421
    },
    "colab_type": "code",
    "id": "3wyDGn_NfuOf",
    "outputId": "de306431-f9f6-4a25-cefb-03201aa77b96"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col0 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col1 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col2 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col3 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col4 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col5 {\n",
       "            background:  yellow;\n",
       "        }    #T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col6 {\n",
       "            background:  yellow;\n",
       "        }</style><table id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83da\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Accuracy</th>        <th class=\"col_heading level0 col1\" >AUC</th>        <th class=\"col_heading level0 col2\" >Recall</th>        <th class=\"col_heading level0 col3\" >Prec.</th>        <th class=\"col_heading level0 col4\" >F1</th>        <th class=\"col_heading level0 col5\" >Kappa</th>        <th class=\"col_heading level0 col6\" >MCC</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col0\" class=\"data row0 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col1\" class=\"data row0 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col2\" class=\"data row0 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col3\" class=\"data row0 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col4\" class=\"data row0 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col5\" class=\"data row0 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow0_col6\" class=\"data row0 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col0\" class=\"data row1 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col1\" class=\"data row1 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col2\" class=\"data row1 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col3\" class=\"data row1 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col4\" class=\"data row1 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col5\" class=\"data row1 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow1_col6\" class=\"data row1 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col0\" class=\"data row2 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col1\" class=\"data row2 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col2\" class=\"data row2 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col3\" class=\"data row2 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col4\" class=\"data row2 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col5\" class=\"data row2 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow2_col6\" class=\"data row2 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col0\" class=\"data row3 col0\" >0.9000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col1\" class=\"data row3 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col2\" class=\"data row3 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col3\" class=\"data row3 col3\" >0.9250</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col4\" class=\"data row3 col4\" >0.8971</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col5\" class=\"data row3 col5\" >0.8485</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow3_col6\" class=\"data row3 col6\" >0.8616</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col0\" class=\"data row4 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col1\" class=\"data row4 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col2\" class=\"data row4 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col3\" class=\"data row4 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col4\" class=\"data row4 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col5\" class=\"data row4 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow4_col6\" class=\"data row4 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row5\" class=\"row_heading level0 row5\" >5</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col0\" class=\"data row5 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col1\" class=\"data row5 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col2\" class=\"data row5 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col3\" class=\"data row5 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col4\" class=\"data row5 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col5\" class=\"data row5 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow5_col6\" class=\"data row5 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row6\" class=\"row_heading level0 row6\" >6</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col0\" class=\"data row6 col0\" >0.8889</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col1\" class=\"data row6 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col2\" class=\"data row6 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col3\" class=\"data row6 col3\" >0.9167</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col4\" class=\"data row6 col4\" >0.8857</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col5\" class=\"data row6 col5\" >0.8333</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow6_col6\" class=\"data row6 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row7\" class=\"row_heading level0 row7\" >7</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col0\" class=\"data row7 col0\" >0.8889</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col1\" class=\"data row7 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col2\" class=\"data row7 col2\" >0.8889</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col3\" class=\"data row7 col3\" >0.9167</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col4\" class=\"data row7 col4\" >0.8857</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col5\" class=\"data row7 col5\" >0.8333</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow7_col6\" class=\"data row7 col6\" >0.8492</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row8\" class=\"row_heading level0 row8\" >8</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col0\" class=\"data row8 col0\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col1\" class=\"data row8 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col2\" class=\"data row8 col2\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col3\" class=\"data row8 col3\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col4\" class=\"data row8 col4\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col5\" class=\"data row8 col5\" >1.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow8_col6\" class=\"data row8 col6\" >1.0000</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row9\" class=\"row_heading level0 row9\" >9</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col0\" class=\"data row9 col0\" >0.7778</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col1\" class=\"data row9 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col2\" class=\"data row9 col2\" >0.7778</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col3\" class=\"data row9 col3\" >0.7778</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col4\" class=\"data row9 col4\" >0.7778</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col5\" class=\"data row9 col5\" >0.6667</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow9_col6\" class=\"data row9 col6\" >0.6667</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row10\" class=\"row_heading level0 row10\" >Mean</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col0\" class=\"data row10 col0\" >0.9456</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col1\" class=\"data row10 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col2\" class=\"data row10 col2\" >0.9444</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col3\" class=\"data row10 col3\" >0.9536</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col4\" class=\"data row10 col4\" >0.9446</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col5\" class=\"data row10 col5\" >0.9182</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow10_col6\" class=\"data row10 col6\" >0.9227</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83dalevel0_row11\" class=\"row_heading level0 row11\" >SD</th>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col0\" class=\"data row11 col0\" >0.0738</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col1\" class=\"data row11 col1\" >0.0000</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col2\" class=\"data row11 col2\" >0.0745</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col3\" class=\"data row11 col3\" >0.0688</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col4\" class=\"data row11 col4\" >0.0745</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col5\" class=\"data row11 col5\" >0.1108</td>\n",
       "                        <td id=\"T_0cd96082_e648_11ea_a0a3_482ae32b83darow11_col6\" class=\"data row11 col6\" >0.1077</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1faef5eddc8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "tuned_lr = tune_model(lr)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "BVdIeXY5fuOi"
   },
   "source": [
    "The `tune_model()` function is a random grid search of hyperparameters over a pre-defined search space. By default, it is set to optimize `Accuracy` but this can be changed using the `optimize` parameter. For example: `tune_model(dt, optimize = 'Recall')` will search for the hyperparameters of a Decision Tree Classifier that result in the highest `Recall`. For the purposes of this example, we have used the default metric `Accuracy` for the sake of simplicity only. The methodology behind selecting the right metric to evaluate a classifier is beyond the scope of this tutorial but if you would like to learn more about it, you can __[click here](https://medium.com/@MohammedS/performance-metrics-for-classification-problems-in-machine-learning-part-i-b085d432082b)__ to read an article on how to choose the right evaluation metric.\n",
    "\n",
    "Metrics alone are not the only criteria you should consider when finalizing the best model for production. Other factors to consider include training time, standard deviation of kfolds etc. As you progress through the tutorial series we will discuss those factors in detail at the intermediate and expert levels. For now, let's move forward considering the Tuned K Neighbors Classifier as our best model for the remainder of this tutorial."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "3zct2zSYfuOl"
   },
   "source": [
    "# 10.0 Plot a Model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "a3_m4yEdfuOm"
   },
   "source": [
    "Before model finalization, the `plot_model()` function can be used to analyze the performance across different aspects such as AUC, confusion_matrix, decision boundary etc. This function takes a trained model object and returns a plot based on the test / hold-out set. \n",
    "\n",
    "There are 15 different plots available, please see the `plot_model()` docstring for the list of available plots."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "AegNi_BXfuOn"
   },
   "source": [
    "### 10.1 Confusion Matrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 374
    },
    "colab_type": "code",
    "id": "kI0tERkNfuOo",
    "outputId": "d13e1e50-aa8c-420e-ba85-3affca7b9500"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeoAAAFkCAYAAADv13iSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAArfklEQVR4nO3deViU5eL/8Q/DqmIopuRShrlwTE09B8s1Revkri1abpG/NE1TMw3Nfc3UcCvNrFOpuZRLejJbrayO6ym3b5gd10hAQ0VFYGDm/v3h5RQpYSbMDbxf1+V1wf3MPPeHYeQz9zMzz/gYY4wAAICVHN4OAAAAckZRAwBgMYoaAACLUdQAAFiMogYAwGIUNQAAFqOo4VXLly9Xhw4d1KZNG7Vt21bDhw/X8ePHr3l/qampql+/vnbt2nXZtn79+unNN9/M8brbtm1TnTp11LFjR8+/Vq1aqV+/fjp9+vQ1Z3rppZf06aefer5PSkrSiBEj1L59e3Xo0EEPPfRQtu01atTQqVOnrnm+Kxk1apT+85//SJIWLFig5s2ba+TIkdnG/4rPP/9cPXv2VMeOHdW2bVsNGTJECQkJf2mfv815LTp27KizZ8/+pQyXjBgxQjVq1NDWrVuzjcfHxysiIkITJ07MdR+jR4/Wvn37rrjtev0eUEgZwEumTZtmoqOjzfHjx40xxrhcLrN27VrTpEkTk5CQcM37HT9+vBk1alS2sYSEBFOvXj2TkpKS4/W2bt1q2rZtm20sKyvL9O/f38ycOfOa8/To0cNs3LjRGGNMcnKyad68uVm7dq1xu93GGGPi4uLMXXfdZb7++mtjjDHVq1c3ycnJ1zxfbqKiosyOHTuu2/7Wr19vWrdubY4cOWKMMcbtdptXXnnFtGrVymRkZFzzfq93zr8iJibGNG/e3IwYMSLb+Lx580yjRo3MhAkTct1HixYtzJ49e/IqIgoxP28/UEDRlJiYqBUrVuiLL75QSEiIJMnhcKhTp07at2+fFi5cqHHjxikqKkqdO3fWli1blJCQoI4dO2rIkCGSpE2bNmnBggXKzMxUUFCQYmJiVK9ePXXv3l1du3bVc889p+LFi0uSVq1apbZt2+qGG27QwYMHNWrUKDmdThlj9OCDD6p79+5XzHn+/HmdOnVK9evXlySdO3dOU6ZM0YEDB5SZmamGDRvq2WeflZ+fn+bOnatPPvlE/v7+Kl26tJ5//nl98skn2rdvn6ZPny5fX1/98MMPql+/vjp16uSZIyIiQnPnztUNN9yQbe4LFy5o/PjxOnr0qM6cOaMSJUpo5syZqlKlij7++GMtWLBAPj4+8vX11bPPPqvIyMgcx3v27Knu3bvrww8/VFJSkkaNGqXBgwdr+fLl6t69u+677z59++23mjlzptLS0uRwODRw4EC1aNFCa9as0apVq5SWlqbg4GAtWbIkW85Zs2Zp0qRJqly5siTJx8dHffv2Vfny5eV0OhUQEKCXX35ZGzZskK+vr8LDwzVmzBiVLVtWPXv2VN26dfXtt98qISFBDRs21KRJkzR06NAcc0ry/Dz33XffFW/3cuXKqUaNGtqyZYtCQ0P/9PwOx+UHG9u0aaNVq1YpPT1dQUFBkqSNGzeqdevWcrvdkqRdu3ZpxowZcjqdOnnypBo1aqSpU6dq1qxZOnHihIYNG6bp06dr5syZCgkJ0aFDh/TII4/o448/Vvfu3VWqVCkNHjxY69evV9myZfXoo4/qrrvu0oABA676/xYKIW8/UkDR9OGHH5r777//its+++wz0759e2PMxVXItGnTjDHGJCYmmtq1a5tjx46Zw4cPm3bt2plTp04ZY4w5cOCAady4sUlNTTXGXFzFrl692hhzcaXevHlzExcXZ4wxZuTIkWbhwoXGGGNOnDhhhgwZYlwul9m6daupXbu26dChg2nTpo256667TKdOnczChQuN0+k0xhgzYsQIs3jxYmPMxdX2sGHDzKuvvmqOHz9u6tev71lBvv766+aTTz7xZLm0on7iiSfM0qVL//C2ubSi3rhxo5k0aZJnfMyYMWbixInGGGNatmxpvvvuO2OMMV999ZWZN2/eH47/NsNvV3aXxs+cOWPuvfde89NPP3lu62bNmpmff/7ZrF692kRGRppz585dlvXUqVOmevXq5sKFCzn+PKtWrTJdu3b1/G7mzp1revfu7Zl/0KBBxuVymXPnzpkmTZqYLVu25Jjzkkvf/9Htful2vNb5fysmJsa89tpr5oknnjAbNmwwxhizY8cO89RTT5m5c+d6VtRPP/202bp1qzHGmPPnz5s777zT7N2794o/z8iRIy/7eYwxJjY21jz++ONm3rx5pnfv3sblcuV426JoYEUNr8nKyrriuNPplI+Pj+f7li1bSpLCwsJU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aPr06ddl34sWLVJYWFiO23fs2CGXy/WX50lKSlKvXr3UpUsX/fvf/9b69etVrVo1DRw48C/vG8CveB81YIE777xTsbGxkqSoqCjVqVNHcXFxWrZsmb766iu99dZbcrvduv322zVu3DgFBgbqvffe04IFCxQcHKyKFSuqePHinusvXrxYZcuW1YQJE/Tf//5X/v7+evLJJ+V0OrVv3z6NHj1aL730koKCgjR+/HidOXNGQUFBGjNmjGrWrKn4+HgNHz5cFy5c0B133HHFzMuXL9ddd92lqKgoSRdPkNKnTx9VqlRJWVlZ2S67dOlSrVu3TmlpafL399eLL76oKlWq6IUXXtA333wjh8OhVq1aaeDAgdqyZYtmzJghSQoJCdGLL76o0NDQvLrpAeuxoga8LDMzUx999JHq1q3rGWvWrJk++ugjnTp1Su+8845WrFihdevWqUyZMnr99deVlJSkmTNn6u2339bKlSuVmpp62X4vvfd+48aNeuONN/Tyyy+rTZs2qlWrliZPnqwaNWooJiZGw4cP19q1azVp0iTP22cmTZqk+++/X+vWrVP9+vWvmDsuLk633357tjFfX1+1a9cu25nyzp8/r08//VRLlizR+++/r+bNm+vtt9/Wzz//rM2bN2v9+vVavny5/ve//ykjI0Pz58/X+PHjtWbNGjVq1Ejff//9dbiVgYKLFTXgBSdOnFDHjh0lSU6nU3Xq1NEzzzzj2X5pFbtt2zYdPXpUXbp0kXSx1GvWrKnvvvtO9erV04033ihJat++vbZu3Zptjh07dqhLly5yOBwqW7asNmzYkG17amqq9u3bp5EjR3rGLly4oNOnT2v79u2eD3np0KGDRo8efdnP4OPjc1Xv4Q8ODtaLL76oDRs26MiRI/rqq6/0t7/9TWFhYQoMDNTDDz+sFi1aaNiwYQoMDFTLli01cOBAtWrVSi1btlTjxo1znQMozChqwAsuPUedk8DAQEmSy+VS69atPUWZmpoql8ulLVu26LenQLjSud79/Pyyna/76NGjKl++vOd7t9utgICAbDkSExM9J6y4tH8fHx85HJcffKtVq5b27duXbcztdmvQoEEaP368ZywhIUE9e/ZUjx491KxZM914442Ki4uTn5+f3n33XW3fvl2bN2/Www8/rCVLlig6OlotWrTQ559/rhkzZmjPnj3q379/jrcVUNhx6Buw2J133qlPPvlEycnJMsZo/Pjxeuutt/T3v/9du3btUlJSktxutz744IPLrhsZGakPPvhAxhglJyerR48ecjqd8vX1lcvlUsmSJXXrrbd6ivqbb75R9+7dJUmNGjXS+vXrJUkff/yxMjIyLtt/165d9eWXX+rLL7+UdLHY58+fr+TkZM9KX5L27t2rypUrKzo6WrVr19ann34ql8ul77//Xj169FBkZKRiYmJ022236fDhw3rooYeUmpqq6OhoRUdHc+gbRR4rasBiERERGjhwoB599FG53W797W9/U9++fRUYGKjRo0crOjpaxYoVU9WqVS+7brdu3TR58mR16NBB0sWPtwwODlbTpk01btw4vfDCC5oxY4bGjx+v1157Tf7+/po1a5Z8fHw0duxYDR8+XCtXrlStWrVUokSJy/ZftmxZLVq0SNOnT9fMmTPlcrlUs2ZNvfzyy9ku17hxYy1fvlxt2rSRMUaRkZH68ccfVbNmTdWtW1ft2rVTsWLFVL9+fTVr1kzFihXTiBEj5Ofnp+LFi3MuchR5nEIUAACLcegbAACLUdQAAFiMogYAwGIUNQAAFqOoAQCwGEUNAIDFKGoAACz2/wGfkzO4pfqZJQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 576x396 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_model(tuned_knn, plot = 'confusion_matrix')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "WdQqEtO4fuOt"
   },
   "source": [
    "### 10.2 Classification Report"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 401
    },
    "colab_type": "code",
    "id": "wHKBMDaZfuOu",
    "outputId": "2a627204-ff7b-4a2b-f307-1d5707c159f5"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAggAAAGACAYAAADI95pLAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAA5UElEQVR4nO3deZyN5f/H8feZlTGWZGksI9tQlhj5IlHZt2E0GGubIllrFFIIMV98E1lbSd9QgywhCQnZjUwxIsaSfWwzY9Zz/f7wnfMz3bZqZk5z5vV8PHo8Otd97uv+3C7mvOe6r3PfNmOMEQAAwA3cnF0AAAD45yEgAAAACwICAACwICAAAAALAgIAALAgIAAAAAsCQi40f/58tW3bVq1atVLr1q316quv6vfff//L/cXHxyswMFCRkZGWbS+++KLmzJlzy323bdum6tWrq127do7/mjRpohdffFEXL178yzVNmzZNa9eudbw+c+aMhg4dqqCgILVt21YdO3bMsL1SpUqKjY39y8e7meHDh2vLli2SpJkzZ+rxxx/XsGHDMrT/HevXr1ePHj3Url07tW7dWoMGDdKpU6ckSYsXL1bv3r3/9jFudObMGXXu3FmSFBcXp86dO6t169Zavny5o/2v+PLLL/Xf//5X0vW/m++//36m1CtdH9egoCC1a9dOwcHBat68uUJCQrRv375MO8btHD9+XP3798+WYwGZziBXCQ8PN88884z5/fffjTHGpKWlmSVLlphHH33UnDp16i/3O2rUKDN8+PAMbadOnTI1a9Y0ly9fvuV+W7duNa1bt87Qlpqaavr06WMmTZr0l+vp3r27WbVqlTHGmAsXLpjHH3/cLFmyxNjtdmOMMfv37zd169Y1mzZtMsYYExAQYC5cuPCXj3cnjRo1Mjt27Mi0/pYtW2Zatmxpjh49aowxxm63m1mzZpkmTZqYpKQks2jRItOrV69MO94fbd++3TRp0iRT+hoyZIj58MMPM6WvP7rZuH744YemU6dOWXK8P7rZ328gp/BwdkBB9jl9+rQWLFigDRs2qGDBgpIkNzc3BQcHKyoqSrNnz9bIkSPVqFEjtW/fXj/++KNOnTqldu3aadCgQZKkdevWaebMmUpJSVGePHk0ZMgQ1axZU926dVNoaKhef/11+fj4SJIiIiLUunVrFShQQIcPH9bw4cOVnJwsY4w6dOigbt263bTOuLg4xcbGKjAwUJJ09epVvf322zp48KBSUlJUr149vfbaa/Lw8NDUqVP17bffytPTU/fcc4/Gjx+vb7/9VlFRUZowYYLc3d0VHR2twMBABQcHO45RuXJlTZ06VQUKFMhw7ISEBI0aNUoxMTG6dOmS8uXLp0mTJqlcuXJas2aNZs6cKZvNJnd3d7322muqXbv2Ldt79Oihbt26afXq1Tpz5oyGDx+ugQMHav78+erWrZtatGih3bt3a9KkSbp27Zrc3NzUr18/PfHEE1q8eLEiIiJ07do1+fr6at68eRnqnDx5ssaMGaMyZcpIkmw2m3r16iU/Pz8lJydneG9kZKQmTpyo5ORknTt3To888ojGjRun1NRUjRkzRrt375anp6dKlSql8ePHy9vb+6btFy9eVFBQkBYtWqTXX39dZ86cUbt27fTOO++oQ4cO2rNnj1JTUzVx4kRt2LBB7u7uqlmzpkaOHKkrV65oxIgRunDhgs6dO6eSJUvq3Xff1e7du7Vu3Tpt3rxZefLkUWxsrC5evKgRI0bo119/1ejRo3Xp0iXZbDY999xzCg4O1rZt2zR58mSVLl1av/76q1JTU/XWW2+pVq1ad/w3kJqaqlOnTjn+/kvXZ3fWrFkju92ukiVLauTIkSpevLh69OihBx98ULt27dLFixfVrl07DRgwQJK0du1aTZs2TXa7Xfny5dOwYcNUvXp1vffee4qMjNTZs2dVsWJF7du3T2fOnFHPnj310Ucf3bE+4B/F2QkF2Wf16tXmySefvOm27777zgQFBRljjHniiSdMeHi4McaY06dPm2rVqpljx46ZI0eOmDZt2pjY2FhjjDEHDx409evXN/Hx8caY67+1L1q0yBhzfWbi8ccfN/v37zfGGDNs2DAze/ZsY4wxZ8+eNYMGDTJpaWlm69atplq1aqZt27amVatWpm7duiY4ONjMnj3bJCcnG2OMGTp0qPn000+NMddnFwYPHmzef/998/vvv5vAwECTlJRkjDHmo48+Mt9++62jlvQZhN69e5vPPvvstn826b9prlq1yowZM8bR/uabb5rRo0cbY4xp3Lix2bNnjzHGmB9++MG89957t22/sYYnnnjC/PTTTxnaL126ZJo1a2aOHz/u+LNu2LChOXnypFm0aJGpXbu2uXr1qqXW2NhYExAQYBISEm55PjfO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\n",
      "text/plain": [
       "<Figure size 576x396 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_model(tuned_knn, plot = 'class_report')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "iidIhDUufuOx"
   },
   "source": [
    "### 10.3 Decision Boundary Plot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 361
    },
    "colab_type": "code",
    "id": "9_2R_acYfuOz",
    "outputId": "aedd0637-b29e-49e5-999a-a255be6bd313"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x396 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_model(tuned_knn, plot='boundary')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "JY8z7B8MfuO2"
   },
   "source": [
    "### 10.4 Prediction Error Plot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 401
    },
    "colab_type": "code",
    "id": "AtSP2JAXfuO3",
    "outputId": "e3230ae1-7d7e-4270-9935-f2dd54295dd1"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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Mv7xj3/ctv8ff/zRqFWrlv396t+/v2G1Wo0rV64YDRo0MHbv3n3H/WUYN46vmTNn2vvs2rWr8dVXXxmGkfNxlZSUZFStWtVo27at0bp1a6NevXpGixYtjPfee89IS0szDMMwZs2aZUycONGw2WyGYRjGu+++a4wePdrIysoyHn30USMlJcUwDMNYs2aNsWLFCnstN2fwY8aMMSZNmnTb133TzeNl3759Rr9+/Qyr1WoYhmF88MEHxuuvv24YhmG8+OKLxr///W/DMAwjMTHRiI2NveP6P9Zw8xj84/rMzEzj2WefNRISEgzDMIzU1FSjZcuWxv79+41vv/3WqFq1qpGcnHzHugFHmMGbgKenp30G4UhAQIDmzp2rHTt26OTJk/rxxx919epVSVLDhg312muv6ezZs6pfv74GDx6sYsWK5bj+dqKiouTv7y+bzSYfHx917txZ4eHhSk5Olre3t2rWrClJOnDggM6fP68333zT3tbDw0NHjx7V7t271bp1a/n6+srX11dt2rTR0aNHs42zb98+PfLII6pevbokqXnz5nf8bvrbb7/Vk08+af9et169egoODlZCQoIkqW7duvazH9WrV9fly5dv20+5cuW0du3aHMepWbOmvL29b7v8n//8R4MGDZKPj4+kG2cj/vj6a9eunWO/uX0dfx7/j7Kysm67PiMjQx4eHvblsLAweXp6KjAwUOXLl9fly5fvuL9Kly6tbt26aeDAgXrzzTd14sQJnTt3TmFhYZJyPq4uX74sf39/+/v59ddfa8iQIQoLC1NAQIAkafv27bpy5Yq++eYbSVJmZqZKlCghLy8vtWjRQhEREXr66afVoEEDNW7c+JbX5uHhISOXd+N+4okndP/992vFihVKSkrSnj177HW0bNlSY8aM0datW1W/fn299dZbd1zvyMmTJ3Xq1ClFR0fb112/fl1HjhxRpUqV9OCDD9rPhgDOIuBNoEaNGjpx4oTS0tLsISVJKSkpGjlypGbOnGlf99///lddu3ZVly5dFBoaaj/VfbOfLVu2aPfu3fr222/VuXNnzZ8/P8f1ISEht9QyderUHH+s5Ovraw8fq9WqSpUq6eOPP85Wb3BwsFauXJmtnZeX1y19eXl5ZQslwzB09OhRVa1a9bZj22y2bNvfbHMz9Pz9/e3r8xIKf1a0aNEcl/9cg81my3aa+M9t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\n",
      "text/plain": [
       "<Figure size 576x396 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_model(tuned_knn, plot = 'error')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "hxGSKMKZfuO7"
   },
   "source": [
    "*Another* way to analyze the performance of models is to use the `evaluate_model()` function which displays a user interface for all of the available plots for a given model. It internally uses the `plot_model()` function. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 421,
     "referenced_widgets": [
      "9cc0efb4189e48c6beb4fe1c0c4a2fdc",
      "a63ed06ee88c4ca3883ac38e665bddf8",
      "b046e2e525ca425a80aac86d7b665854",
      "36a827017abf468d939c97492b5c73ab",
      "17f607299eaf4b05a1542960ba1f8953",
      "e4c7bdc3be744945b405b9905048f64f",
      "bdb566b147ef4202b351fd1014883ce6",
      "0a505068ebbf4d068aa7d75f702ac715",
      "094d443554a84f2788d4802512cda617",
      "4c1ee7022483425d9541b0e49f1efcd2",
      "17810a03d1424e729b70ec2044e9e7f6",
      "9d7425bc499c4f57a680a7166389e5dc",
      "08ddc7a42f8d492faa945a5d7eac4a86",
      "0a1412c6e3f6498ca9d221f259716943",
      "6e43059d835f4d62aa1e5c5bf7d676e1",
      "c20470f03116445ab707f5857592d046",
      "52e6b5978ec94fdabdc9adf9286c3078",
      "d0366972e1664000b72674d0a285a785",
      "66b421a890bc462b97e5d9d23fe5809a",
      "904ec053638f498aa1d0e4944145f736",
      "d8e230198678421ea3afef9ca721090d",
      "a1a8e8de38404b83bec2300554e42aa8",
      "7448bcccbfaa432c8f1f9936a51ccf3c",
      "eae1b12ae33041e9a14d7372fd0d6be3",
      "2d502879922046aaba1d84769e93ff1b",
      "0dc3288edbff469189f52ebf88863853",
      "d360dbb5ee734c839b8a30238d824633",
      "f0c4a07ca3cf4460bed061f0609b9b2b",
      "57e3592dda974775b2fc52ee73ecb50c",
      "cc64cb2f6f8148d7ad9ce9d9cd16dd5f",
      "3dd8046812e942bf9e2ccc62ba4bf2a5",
      "a4291bb80392498ba074a033b6c60d86",
      "2c22eeecfa054ab59f5a2bc6ea4e7244",
      "46eb9473b4c64c59956eae387e60555a",
      "eecbd2ce9de64166bcfddadaef395d65",
      "4e0a64915ccd490aae253c73dbf91a99"
     ]
    },
    "colab_type": "code",
    "id": "K5pXw5FFfuO8",
    "outputId": "3efd9151-1313-4d83-ccbb-877e088c44bc"
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e48f07f434af4a129f5541cac7981f71",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "interactive(children=(ToggleButtons(description='Plot Type:', icons=('',), options=(('Hyperparameters', 'param…"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "evaluate_model(tuned_knn)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Wo-Ob7AffuO_"
   },
   "source": [
    "# 11.0 Predict on test / hold-out Sample"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Bqznw_2efuPB"
   },
   "source": [
    "Before finalizing the model, it is advisable to perform one final check by predicting the test/hold-out set and reviewing the evaluation metrics. If you look at the information grid in Section 6 above, you will see that 30% (41 samples) of the data has been separated out as a test/hold-out sample. All of the evaluation metrics we have seen above are cross validated results based on the training set (70%) only. Now, using our final trained model stored in the `tuned_knn` variable we will predict against the hold-out sample and evaluate the metrics to see if they are materially different than the CV results."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 80
    },
    "colab_type": "code",
    "id": "8handW2hfuPD",
    "outputId": "b654968b-faec-4ce4-ff3b-338e263c2ceb"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Model</th>\n",
       "      <th>Accuracy</th>\n",
       "      <th>AUC</th>\n",
       "      <th>Recall</th>\n",
       "      <th>Prec.</th>\n",
       "      <th>F1</th>\n",
       "      <th>Kappa</th>\n",
       "      <th>MCC</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>One Vs Rest Classifier</td>\n",
       "      <td>0.9512</td>\n",
       "      <td>0</td>\n",
       "      <td>0.9505</td>\n",
       "      <td>0.9512</td>\n",
       "      <td>0.9512</td>\n",
       "      <td>0.9268</td>\n",
       "      <td>0.9268</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                    Model  Accuracy  AUC  Recall   Prec.      F1   Kappa  \\\n",
       "0  One Vs Rest Classifier    0.9512    0  0.9505  0.9512  0.9512  0.9268   \n",
       "\n",
       "      MCC  \n",
       "0  0.9268  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "predict_model(tuned_knn);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "XIM4IVWGfuPL"
   },
   "source": [
    "The accuracy on the test/hold-out set is **`0.9512`** compared to **`0.9356`** achieved on the `tuned_knn` CV results (in section 9.2 above). This is not a significant difference. If there is a large variation between the test/hold-out and CV results, then this would normally indicate over-fitting but could also be due to several other factors and would require further investigation. In this case, we will move forward with finalizing the model and predicting on unseen data (the 10% that we had separated in the beginning and never exposed to PyCaret).\n",
    "\n",
    "(TIP : It's always good to look at the standard deviation of CV results when using `create_model()`.)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "HaVz-bOIfuPN"
   },
   "source": [
    "# 12.0 Finalize Model for Deployment"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "7pRFqxXVfuPO"
   },
   "source": [
    "Model finalization is the last step in the experiment. A normal machine learning workflow in PyCaret starts with `setup()`, followed by comparing all models using `compare_models()` and shortlisting a few candidate models (based on the metric of interest) to perform several modeling techniques such as hyperparameter tuning, ensembling, stacking etc. This workflow will eventually lead you to the best model for use in making predictions on new and unseen data. The `finalize_model()` function fits the model onto the complete dataset including the test/hold-out sample (30% in this case). The purpose of this function is to train the model on the complete dataset before it is deployed in production."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "oIOJaUkEfuPP"
   },
   "outputs": [],
   "source": [
    "final_knn = finalize_model(tuned_knn)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 136
    },
    "colab_type": "code",
    "id": "tyo7534XfuPV",
    "outputId": "c4562eb1-07ac-4c3b-b56d-4f7ae25d929a"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OneVsRestClassifier(estimator=KNeighborsClassifier(algorithm='auto',\n",
      "                                                   leaf_size=30,\n",
      "                                                   metric='minkowski',\n",
      "                                                   metric_params=None,\n",
      "                                                   n_jobs=-1, n_neighbors=13,\n",
      "                                                   p=2, weights='uniform'),\n",
      "                    n_jobs=None)\n"
     ]
    }
   ],
   "source": [
    "#Final K Nearest Neighbour parameters for deployment\n",
    "print(final_knn)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "da2mWvRefuPk"
   },
   "source": [
    "# 13.0 Predict on unseen data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "BAAHbcnVfuPl"
   },
   "source": [
    "The `predict_model()` function is also used to predict on the unseen dataset. The only difference from section 11 above is that this time we will pass the `data_unseen` parameter. `data_unseen` is the variable created at the beginning of the tutorial and contains 10% (15 samples) of the original dataset which was never exposed to PyCaret. (see section 5 for explanation)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 204
    },
    "colab_type": "code",
    "id": "rvL8lBlAfuPn",
    "outputId": "a6d8a475-6c99-4baf-a900-ac8d7c6468b0"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sepal_length</th>\n",
       "      <th>sepal_width</th>\n",
       "      <th>petal_length</th>\n",
       "      <th>petal_width</th>\n",
       "      <th>species</th>\n",
       "      <th>Label</th>\n",
       "      <th>Score</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>5.4</td>\n",
       "      <td>3.9</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.4</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>5.4</td>\n",
       "      <td>3.4</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>5.1</td>\n",
       "      <td>3.3</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.5</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4.8</td>\n",
       "      <td>3.1</td>\n",
       "      <td>1.6</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>6.9</td>\n",
       "      <td>3.1</td>\n",
       "      <td>4.9</td>\n",
       "      <td>1.5</td>\n",
       "      <td>Iris-versicolor</td>\n",
       "      <td>1</td>\n",
       "      <td>0.7692</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   sepal_length  sepal_width  petal_length  petal_width          species  \\\n",
       "0           5.4          3.9           1.7          0.4      Iris-setosa   \n",
       "1           5.4          3.4           1.7          0.2      Iris-setosa   \n",
       "2           5.1          3.3           1.7          0.5      Iris-setosa   \n",
       "3           4.8          3.1           1.6          0.2      Iris-setosa   \n",
       "4           6.9          3.1           4.9          1.5  Iris-versicolor   \n",
       "\n",
       "   Label   Score  \n",
       "0      0  1.0000  \n",
       "1      0  1.0000  \n",
       "2      0  1.0000  \n",
       "3      0  1.0000  \n",
       "4      1  0.7692  "
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "unseen_predictions = predict_model(final_knn, data=data_unseen)\n",
    "unseen_predictions.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "LKi7aVcJfuPr"
   },
   "source": [
    "The `Label` and `Score` columns are added onto the `data_unseen` set. Label is the prediction and score is the probability of the prediction. Notice that predicted results are concatenated to the original dataset while all the transformations are automatically performed in the background."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "uAhEcJnqfuPs"
   },
   "source": [
    "# 14.0 Saving the model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "vENiYvosfuPt"
   },
   "source": [
    "We have now finished the experiment by finalizing the `tuned_knn` model which is now stored in the `final_knn` variable. We have also used the model stored in `final_knn` to predict `data_unseen`. This brings us to the end of our experiment, but one question is still to be asked: What happens when you have more new data to predict? Do you have to go through the entire experiment again? The answer is no, PyCaret's inbuilt function `save_model()` allows you to save the model along with entire transformation pipeline for later use."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 34
    },
    "colab_type": "code",
    "id": "2UL0UC7UfuPu",
    "outputId": "003611da-e34b-4de1-d251-94e633323ee7"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Transformation Pipeline and Model Succesfully Saved\n"
     ]
    }
   ],
   "source": [
    "save_model(final_knn,'Final KNN Model 08Feb2020')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Gt94CUaXfuPz"
   },
   "source": [
    "(TIP : It's always good to use date in the filename when saving models, it's good for version control.)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "uVFI4If3fuP1"
   },
   "source": [
    "# 15.0 Loading the saved model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "7eHcdfrRfuP3"
   },
   "source": [
    "To load a saved model at a future date in the same or an alternative environment, we would use PyCaret's `load_model()` function and then easily apply the saved model on new unseen data for prediction."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 34
    },
    "colab_type": "code",
    "id": "8ThDTvUifuP6",
    "outputId": "c599c153-1079-477c-a8d7-66cc846fc0c2"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Transformation Pipeline and Model Sucessfully Loaded\n"
     ]
    }
   ],
   "source": [
    "saved_final_knn = load_model('Final KNN Model 08Feb2020')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "7bo2xBltfuQC"
   },
   "source": [
    "Once the model is loaded in the environment, you can simply use it to predict on any new data using the same `predict_model()` function. Below we have applied the loaded model to predict the same `data_unseen` that we used in section 13 above."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "bcPp5zcjfuQD"
   },
   "outputs": [],
   "source": [
    "new_prediction = predict_model(saved_final_knn, data=data_unseen)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 204
    },
    "colab_type": "code",
    "id": "NYhNg8RyfuQM",
    "outputId": "05ff52a7-a98a-4d45-f2b7-75d3186785ce"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sepal_length</th>\n",
       "      <th>sepal_width</th>\n",
       "      <th>petal_length</th>\n",
       "      <th>petal_width</th>\n",
       "      <th>species</th>\n",
       "      <th>Label</th>\n",
       "      <th>Score</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>5.4</td>\n",
       "      <td>3.9</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.4</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>5.4</td>\n",
       "      <td>3.4</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>5.1</td>\n",
       "      <td>3.3</td>\n",
       "      <td>1.7</td>\n",
       "      <td>0.5</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4.8</td>\n",
       "      <td>3.1</td>\n",
       "      <td>1.6</td>\n",
       "      <td>0.2</td>\n",
       "      <td>Iris-setosa</td>\n",
       "      <td>0</td>\n",
       "      <td>1.0000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>6.9</td>\n",
       "      <td>3.1</td>\n",
       "      <td>4.9</td>\n",
       "      <td>1.5</td>\n",
       "      <td>Iris-versicolor</td>\n",
       "      <td>1</td>\n",
       "      <td>0.7692</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   sepal_length  sepal_width  petal_length  petal_width          species  \\\n",
       "0           5.4          3.9           1.7          0.4      Iris-setosa   \n",
       "1           5.4          3.4           1.7          0.2      Iris-setosa   \n",
       "2           5.1          3.3           1.7          0.5      Iris-setosa   \n",
       "3           4.8          3.1           1.6          0.2      Iris-setosa   \n",
       "4           6.9          3.1           4.9          1.5  Iris-versicolor   \n",
       "\n",
       "   Label   Score  \n",
       "0      0  1.0000  \n",
       "1      0  1.0000  \n",
       "2      0  1.0000  \n",
       "3      0  1.0000  \n",
       "4      1  0.7692  "
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "new_prediction.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Kp_XadZRfuQQ"
   },
   "source": [
    "Notice that the results of `unseen_predictions` and `new_prediction` are identical."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "9_gIC-mSfuQR"
   },
   "source": [
    "# 16.0 Wrap-up / Next Steps?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Rn_0E7H0fuQU"
   },
   "source": [
    "This tutorial has covered the entire machine learning pipeline from data ingestion, pre-processing, training the model, hyperparameter tuning, prediction and saving the model for later use. We have completed all of these steps in less than 10 commands which are naturally constructed and very intuitive to remember such as `create_model()`, `tune_model()`, `compare_models()`. Re-creating the entire experiment without PyCaret would have taken well over 100 lines of code in most libraries.\n",
    "\n",
    "We have only covered the basics of `pycaret.classification`. In following tutorials we will go deeper into advanced pre-processing, ensembling, generalized stacking and other techniques that allow you to fully customize your machine learning pipeline and are must know for any data scientist. "
   ]
  }
 ],
 "metadata": {
  "colab": {
   "collapsed_sections": [
    "e-NQVSpIfuMi",
    "QXG8qOz5fuM3",
    "i9ZvVSDYfuNL",
    "qH7AeJqjfuNX",
    "yyApyoXbfuNZ",
    "PhHDTJYwfuNl",
    "8IA_BtchfuNt",
    "jzY5pn-OfuN4",
    "WVgKXyjdfuN7",
    "fe9QKCZ8fuOU",
    "oF2hDwoifuOd",
    "3zct2zSYfuOl",
    "AegNi_BXfuOn",
    "WdQqEtO4fuOt",
    "iidIhDUufuOx",
    "Wo-Ob7AffuO_",
    "HaVz-bOIfuPN",
    "da2mWvRefuPk",
    "uAhEcJnqfuPs",
    "uVFI4If3fuP1",
    "9_gIC-mSfuQR"
   ],
   "name": "Multiclass Classification Tutorial (MCLF101) - Level Beginner (ACN_EDITS).ipynb",
   "provenance": []
  },
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  },
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "08ddc7a42f8d492faa945a5d7eac4a86": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_6e43059d835f4d62aa1e5c5bf7d676e1",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_0a1412c6e3f6498ca9d221f259716943",
      "value": 5
     }
    },
    "094d443554a84f2788d4802512cda617": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "0a1412c6e3f6498ca9d221f259716943": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "0a505068ebbf4d068aa7d75f702ac715": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "0dc3288edbff469189f52ebf88863853": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "17810a03d1424e729b70ec2044e9e7f6": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "17f607299eaf4b05a1542960ba1f8953": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ToggleButtonsStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ToggleButtonsStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "button_width": "",
      "description_width": "",
      "font_weight": ""
     }
    },
    "2c22eeecfa054ab59f5a2bc6ea4e7244": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "2d502879922046aaba1d84769e93ff1b": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_d360dbb5ee734c839b8a30238d824633",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_0dc3288edbff469189f52ebf88863853",
      "value": 5
     }
    },
    "36a827017abf468d939c97492b5c73ab": {
     "model_module": "@jupyter-widgets/output",
     "model_name": "OutputModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/output",
      "_model_module_version": "1.0.0",
      "_model_name": "OutputModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/output",
      "_view_module_version": "1.0.0",
      "_view_name": "OutputView",
      "layout": "IPY_MODEL_8d00ff3d9987467db4b233132c5a3499",
      "msg_id": "",
      "outputs": [
       {
        "image/png": "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\n",
        "metadata": {
         "tags": []
        },
        "output_type": "display_data",
        "text/plain": "<Figure size 576x396 with 1 Axes>"
       }
      ]
     }
    },
    "3dd8046812e942bf9e2ccc62ba4bf2a5": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_2c22eeecfa054ab59f5a2bc6ea4e7244",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_a4291bb80392498ba074a033b6c60d86",
      "value": 5
     }
    },
    "46eb9473b4c64c59956eae387e60555a": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_4e0a64915ccd490aae253c73dbf91a99",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_eecbd2ce9de64166bcfddadaef395d65",
      "value": 5
     }
    },
    "4c1ee7022483425d9541b0e49f1efcd2": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_9d7425bc499c4f57a680a7166389e5dc",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_17810a03d1424e729b70ec2044e9e7f6",
      "value": 5
     }
    },
    "4e0a64915ccd490aae253c73dbf91a99": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "52e6b5978ec94fdabdc9adf9286c3078": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "57e3592dda974775b2fc52ee73ecb50c": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "66b421a890bc462b97e5d9d23fe5809a": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_d8e230198678421ea3afef9ca721090d",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_904ec053638f498aa1d0e4944145f736",
      "value": 5
     }
    },
    "6e43059d835f4d62aa1e5c5bf7d676e1": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "7448bcccbfaa432c8f1f9936a51ccf3c": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "904ec053638f498aa1d0e4944145f736": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "9cc0efb4189e48c6beb4fe1c0c4a2fdc": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "VBoxModel",
     "state": {
      "_dom_classes": [
       "widget-interact"
      ],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "VBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "VBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_b046e2e525ca425a80aac86d7b665854",
       "IPY_MODEL_36a827017abf468d939c97492b5c73ab"
      ],
      "layout": "IPY_MODEL_a63ed06ee88c4ca3883ac38e665bddf8"
     }
    },
    "9d7425bc499c4f57a680a7166389e5dc": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "a1a8e8de38404b83bec2300554e42aa8": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_eae1b12ae33041e9a14d7372fd0d6be3",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_7448bcccbfaa432c8f1f9936a51ccf3c",
      "value": 5
     }
    },
    "a4291bb80392498ba074a033b6c60d86": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "a63ed06ee88c4ca3883ac38e665bddf8": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "b046e2e525ca425a80aac86d7b665854": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ToggleButtonsModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ToggleButtonsModel",
      "_options_labels": [
       "Hyperparameters",
       "AUC",
       "Confusion Matrix",
       "Threshold",
       "Precision Recall",
       "Error",
       "Class Report",
       "Feature Selection",
       "Learning Curve",
       "Manifold Learning",
       "Calibration Curve",
       "Validation Curve",
       "Dimensions",
       "Feature Importance",
       "Decision Boundary"
      ],
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ToggleButtonsView",
      "button_style": "",
      "description": "Plot Type:",
      "description_tooltip": null,
      "disabled": false,
      "icons": [
       ""
      ],
      "index": 14,
      "layout": "IPY_MODEL_e4c7bdc3be744945b405b9905048f64f",
      "style": "IPY_MODEL_17f607299eaf4b05a1542960ba1f8953",
      "tooltips": []
     }
    },
    "bdb566b147ef4202b351fd1014883ce6": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_094d443554a84f2788d4802512cda617",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_0a505068ebbf4d068aa7d75f702ac715",
      "value": 2
     }
    },
    "c20470f03116445ab707f5857592d046": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_d0366972e1664000b72674d0a285a785",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_52e6b5978ec94fdabdc9adf9286c3078",
      "value": 5
     }
    },
    "cc64cb2f6f8148d7ad9ce9d9cd16dd5f": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "d0366972e1664000b72674d0a285a785": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "d360dbb5ee734c839b8a30238d824633": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "d8e230198678421ea3afef9ca721090d": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "e4c7bdc3be744945b405b9905048f64f": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "eae1b12ae33041e9a14d7372fd0d6be3": {
     "model_module": "@jupyter-widgets/base",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "eecbd2ce9de64166bcfddadaef395d65": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "f0c4a07ca3cf4460bed061f0609b9b2b": {
     "model_module": "@jupyter-widgets/controls",
     "model_name": "IntProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "IntProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "",
      "description": "Processing: ",
      "description_tooltip": null,
      "layout": "IPY_MODEL_cc64cb2f6f8148d7ad9ce9d9cd16dd5f",
      "max": 5,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_57e3592dda974775b2fc52ee73ecb50c",
      "value": 2
     }
    }
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
